@echo off
chcp 65001 >nul
title 火车票管理系统 Docker 部署脚本

echo.
echo ================================================
echo   火车票管理系统 Docker 部署脚本
echo ================================================
echo.

REM 检查 Docker 是否安装
echo [步骤 1/6] 检查 Docker 环境...
docker --version >nul 2>&1
if %errorlevel% neq 0 (
    echo ❌ 错误：Docker 未安装或未启动
    echo 请先安装 Docker Desktop 并启动
    pause
    exit /b 1
)
echo ✅ Docker 环境正常

REM 检查 Docker Compose
echo [步骤 2/6] 检查 Docker Compose...
docker-compose --version >nul 2>&1
if %errorlevel% neq 0 (
    echo ❌ 错误：Docker Compose 未安装
    pause
    exit /b 1
)
echo ✅ Docker Compose 正常

REM 清理旧的容器和镜像
echo [步骤 3/6] 清理旧环境...
docker-compose down --remove-orphans 2>nul
docker system prune -f >nul 2>&1
echo ✅ 清理完成

REM 构建 Docker 镜像
echo [步骤 4/6] 构建 Docker 镜像...
echo 这可能需要几分钟时间，请耐心等待...
docker-compose build --no-cache
if %errorlevel% neq 0 (
    echo ❌ 构建失败，请检查错误信息
    pause
    exit /b 1
)
echo ✅ 镜像构建完成

REM 启动服务
echo [步骤 5/6] 启动服务...
docker-compose up -d
if %errorlevel% neq 0 (
    echo ❌ 服务启动失败，请检查错误信息
    pause
    exit /b 1
)

REM 等待服务启动
echo [步骤 6/6] 等待服务启动...
timeout /t 30 /nobreak >nul

echo.
echo ================================================
echo   🎉 部署完成！
echo ================================================
echo.
echo 📍 访问地址：
echo   主应用： http://localhost
echo   API接口： http://localhost/api
echo.
echo 📊 服务状态：
docker-compose ps
echo.
echo 💡 常用命令：
echo   查看日志： docker-compose logs -f
echo   停止服务： docker-compose down
echo   重启应用： docker-compose restart
echo.
pause